package xin.clips.system.service.impl;

import java.util.List;
import xin.clips.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import xin.clips.common.core.text.Convert;
import xin.clips.system.domain.gy.GyArmParam;
import xin.clips.system.dto.ArmParamDTO;
import xin.clips.system.mapper.gy.GyArmParamMapper;
import xin.clips.system.service.gy.IGyArmParamService;

/**
 * 机械臂配置Service业务层处理
 *
 * @author clips
 * @date 2023-03-13
 */
@Service
public class GyArmParamServiceImpl implements IGyArmParamService
{
    @Autowired
    private GyArmParamMapper gyArmParamMapper;

    /**
     * 查询机械臂配置
     *
     * @param armId 机械臂配置主键
     * @return 机械臂配置
     */
    @Override
    public GyArmParam selectGyArmParamByArmId(Long armId)
    {
        return gyArmParamMapper.selectGyArmParamByArmId(armId);
    }

    /**
     * 查询机械臂配置列表
     *
     * @param gyArmParam 机械臂配置
     * @return 机械臂配置
     */
    @Override
    public List<GyArmParam> selectGyArmParamList(GyArmParam gyArmParam)
    {
        return gyArmParamMapper.selectGyArmParamList(gyArmParam);
    }

    /**
     * 新增机械臂配置
     *
     * @param gyArmParam 机械臂配置
     * @return 结果
     */
    @Override
    public int insertGyArmParam(GyArmParam gyArmParam)
    {
        gyArmParam.setCreateTime(DateUtils.getNowDate());
        return gyArmParamMapper.insertGyArmParam(gyArmParam);
    }

    /**
     * 修改机械臂配置
     *
     * @param gyArmParam 机械臂配置
     * @return 结果
     */
    @Override
    public int updateGyArmParam(GyArmParam gyArmParam)
    {
        gyArmParam.setUpdateTime(DateUtils.getNowDate());
        return gyArmParamMapper.updateGyArmParam(gyArmParam);
    }

    /**
     * 批量删除机械臂配置
     *
     * @param armIds 需要删除的机械臂配置主键
     * @return 结果
     */
    @Override
    public int deleteGyArmParamByArmIds(String armIds)
    {
        return gyArmParamMapper.deleteGyArmParamByArmIds(Convert.toStrArray(armIds));
    }

    /**
     * 删除机械臂配置信息
     *
     * @param armId 机械臂配置主键
     * @return 结果
     */
    @Override
    public int deleteGyArmParamByArmId(Long armId)
    {
        return gyArmParamMapper.deleteGyArmParamByArmId(armId);
    }

    /**
     * 根据设备id查询机械臂配置
     *
     * @param deviceId 机械臂设备主键
     * @return 机械臂配置
     */
    public GyArmParam selectGyArmParamByDeviceId(Long deviceId){
        return gyArmParamMapper.selectGyArmParamByDeviceId(deviceId);
    }

    /**
     * 大屏-根据设备id查询机械臂配置
     *
     * @param deviceId 机械臂设备主键
     * @return 机械臂配置
     */
    public ArmParamDTO selectDpGyArmParamByDeviceId(Long deviceId){
        return  gyArmParamMapper.selectDpGyArmParamByDeviceId(deviceId);
    }
}
